home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / games / hitton / htn_src.lzh / HTN_SRC / HTN_DEF.H next >
Text File  |  2000-07-03  |  4KB  |  112 lines

  1. /*    『ひっとん』ver.1.00  ヘッダファイル (HTN_DEF.H)        2000  TAU Software    */
  2.  
  3.  
  4. # include    <stdio.h>
  5. # include    <stdlib.h>
  6. # include    <doslib.h>
  7. # include    <iocslib.h>
  8.  
  9.  
  10. /******  構造体  ******/
  11.  
  12. typedef struct {    /*  ランキング用レコード  */
  13.     char    name[5];
  14.     int    score;
  15.     short    block;
  16.     char    level;
  17. } RECS;
  18.  
  19.  
  20. /******  各種マクロ  ******/
  21.  
  22. # define    RECS_HEAD "HTN_RECS"        /* 記録ファイルヘッダ */
  23.  
  24. # define    D_TIME(tm) ((ONTIME()-(tm)+8640000)%8640000)        /* 時間差を求める */
  25. # define    RND0() (((double)rand())/((double)(RAND_MAX+1)))    /* rnd() */
  26. # define    VPAGE2(vp) B_BPOKE((unsigned char *)0xE82601,(vp))    /* 拡張vpage */
  27. # define    VC_SP(dt) B_BPOKE((unsigned char *)0xE82600,(dt))
  28.                         /*  ビデオ・コントローラ:特殊モードの設定  */
  29. # define    VC_PR(dt) B_BPOKE((unsigned char *)0xE82500,(dt))
  30.                         /*  ビデオ・コントローラ:プライオリティ  */
  31.  
  32. # define    SPALET0(no,pb,cl) B_WPOKE((unsigned short *)(0xE82200+(pb)*0x20+(no)*2),(cl));
  33.  
  34. # define    SCROLL2(pg,x,y) ({ SCROLL((pg*2),x,y); SCROLL((pg*2+1),x,y); })    /* 拡張SCROLL */
  35.  
  36.  
  37. # define    VDISP0() { while(!(B_BPEEK((unsigned char *)0xE88001) & 0x10));    \
  38.                while((B_BPEEK((unsigned char *)0xE88001) & 0x10)); }
  39.  
  40.  
  41.  
  42. /*  各テキスト・グラフィックデータの先頭アドレス  */
  43.  
  44. /* テキストデータ */
  45. # define    LTRS(no,pn)    (GRAP(0)+3190*(pn)+58*(no))    /*  文字(平仮名) */
  46. # define    NUMS(no,pn)    (GRAP(0)+340*(pn)+34*(no)+6380)    /*  数字       */
  47. # define    NSUB(no)    (GRAP(0)+17*(no)+7060)        /*  数字(重なり) */
  48. # define    WAIT(no)    (GRAP(0)+3588*(no)+7230)    /* 「ちょっとまってね」 */
  49.  
  50. /* グラフィックデータ */
  51. # define    HTN_LOG0    (GRAP(0)+ 7230)            /* 『ひっとん』(タイトル用)「ひ」*/
  52. # define    HTN_LOG1    (GRAP(0)+10740)            /* 『ひっとん』(タイトル用)「っ」*/
  53. # define    HTN_LOG2    (GRAP(0)+13860)            /* 『ひっとん』(タイトル用)「と」*/
  54. # define    HTN_LOG3    (GRAP(0)+16720)            /* 『ひっとん』(タイトル用)「ん」*/
  55. # define    TAU_LOG        (GRAP(0)+20035)            /* 「2000  TAU Software」ロゴ */
  56. # define    SEL_PNL(no)    (GRAP(0)+3584*(no)+23892)    /*  メニュー (タイトル画面)  */
  57.  
  58. # define    LVL_PNL(no)    (GRAP(0)+1536*(no)+7230)    /* 「レベル」  (ゲーム画面)*/
  59. # define    NXT_PNL(no)    (GRAP(0)+1968*(no)+7230)    /* 「ネクスト」(ゲーム画面)*/
  60. # define    SCR_PNL(no)    (GRAP(0)+1536*(no)+7230)    /* 「スコア」  (ゲーム画面)*/
  61. # define    BLK_PNL(no)    (GRAP(0)+1968*(no)+7230)    /* 「ブロック」(ゲーム画面)*/
  62.  
  63. # define    RANK_LOG    (GRAP(0)+7230)            /* 「ランキング」(ランキング画面)*/
  64. # define    NAME_PNL    (GRAP(0)+7230)            /* 「なまえ」    (ランキング画面)*/
  65.  
  66.  
  67.  
  68.  
  69. /******  プロトタイプ宣言  ******/
  70.  
  71.  
  72. unsigned char *GRAP(unsigned char *);        /*  GRAPHIC_DATA 格納領域先頭 ADDRESS  */
  73. char *FILES_NAME(int,char *);            /*  各ファイル名のポインタ */
  74. RECS *RECS_DATA(int,RECS *);            /*  ランキング用レコード  */
  75. int CNF_STAT(int,int);                /*  環境状態  */
  76. int WRITE_REC(void);                /*  レコードのディスク書き込み  */
  77.  
  78.  
  79.  
  80. /*  HTN_TITL.C  */
  81.  
  82. void PLAY_MUS(int);        /*  PLAY MUSIC */
  83. int PAUSE(void);        /*  PAUSE  */
  84. int MAIN_TITLE(void);        /*  MAIN_TITLE  */
  85.  
  86. int TITLE0(void);        /*  タイトル部の MAIN_PROGRAM  */
  87. int RANKING0(int);        /*  ランキング画面  */
  88.  
  89.  
  90. /*  HTN_INPT.C  */
  91.  
  92. int JOY0(int);            /*  JOY & KEYBORD STATUS <for INPUT>  */
  93. int JOYINP0(int);        /*  JOY & KEYBORD INPUT  */
  94. int JOYINP1(int);        /*  JOY & KEYBORD INPUT (for INPUT NAME) */
  95. int INP_NAME(int,int);        /*  INPUT NAME SUB */
  96.  
  97.  
  98. /*  HTN_GRAP.C  */
  99.  
  100. int GRM_GP(int,int,int,int,unsigned char *,int);    /*  <GRAPHIC> GET&PUT  */
  101. int FILL0(int,int,int,int,int);                /*  <GRAPHIC> FILL  */
  102.  
  103. void TXFILL0(int,int,int,int,int,unsigned short);    /*  <TEXT> FILL */
  104. void PRINT_MES(int,int,char *,int);        /*  <TEXT> PRINT MESSAGE */
  105. void PRINT_TXNUM(int,int,int,int,int,int);    /*  <TEXT> PRINT NUMBER */
  106.  
  107. void PRINT_SPNUM(int,int,int,int,int,int,int);        /*  <SPRITE> PRINT NUMBER  */
  108. void SP_REGST0(int,int,int,int);            /*  <SPRITE> SET SPRITE */
  109. void SET_SP_BLOCK(int,int,int,int,int);            /*  <SPRITE> SET BLOCK */
  110. void SET_BG_BLOCK(int,int,int,int);            /*  <BG> SET BLOCK */
  111.  
  112.